/* Tarla ekim şartlarını denetleyen bir program yazacağız
 elimizde iki renk tohum seçeneği var.
 1- beyaz tohum seçersek ısı 35 derecenin altında ise beyaz mantar ekiyoruz.
 ısı derecesi 35 in üzerindeyse toprak nemli ise patates, nemli değilse
 kırmızı mercimek ekebiliyoruz.
 2- Mavi tohum seçersek ısı 30-40 derece aralığında ve toprak nemli ise pancar
 değilse yeşil mercimek ekiyoruz. Isı aralığında değilse mavi mantar ekiyoruz.
 Buna uygun yazılımı hazırlayalım */

#include <iostream>
using namespace std;

main () 
{
	float ISI=0;
	string NEM="";																																														
	string RENK="";
	string ext;

ANA_MENU:
	system("clear");
	cout << "-------------------------------------------------"<<endl;
	cout << "--------TARLA EKİM UYGULAMASI PROGRAMI-----------"<<endl;
	cout << "-------------------------------------------------";
	cout << endl<<endl;
	
RENK_SEC:
	cout << "Tohum Rengini Seciniz 'mavi' veya 'beyaz'  : ";
	cin >> RENK;
	while (RENK!="beyaz" && RENK!="mavi") 
	{
		cout << "yanlış giriş yaptınız"<<endl;
		goto RENK_SEC;
	}
ISI_SEC:
	cout << "Isı Durumunu giriniz 10-49 derece arası    : ";
	cin >> ISI;
	while ((ISI>50) || (ISI<10))	// burada yukarıdaki gibi && (yani ve) koyduğumuz zaman 
									//iki işlem çalışmıyor demekki aralık belirtmede || (yani veya) kullanmalı
	{	
		cout << "Girdiğiniz aralık ekime uygun değil"<<endl;
		goto ISI_SEC;
	}

NEM_SEC:
	cout << "Nem durumunu belirtiniz 'nemli'  'kuru'    : ";
	cin >> NEM;
	while (NEM!="kuru" && NEM!="nemli") 
	{
		cout << "yanlış giriş yaptınız"<<endl;
		goto NEM_SEC;
	}
	
HESAPLAMA:
	cout << endl;
	cout << "-------------------------------------------------"<<endl;
	cout << "Tohum Renginiz				: "<<RENK<<endl;
	cout << "Isı Değeriniz				: "<<ISI<<endl;
	cout << "Toprak Nem Durumu			: "<<NEM<<endl;
	cout << "-------------------------------------------------"<<endl;
	if (RENK=="beyaz") // tohum rengi beyaz ise
	{
		if (ISI<35)   //eger ısı 35 derece altındaysa
		{
			cout<<"beyaz mantar ekebilirsiniz";
		}
		else  // eğer ısı 35 derecenin üstündeyse
		{
			if (NEM=="nemli") // eger toprak nemliyse
			{
				cout<<"Patates ekebilirsiniz";
			}
			else // eger toprak kuru ise
			{
				cout<<"kırnızı mercimek ekebilirsiniz";
			}

		}
	
	}	
	
	else // tohum rengi mavi ise
	{
		
		if ((ISI<30) || (ISI>40))    //eger ısı 30-40 derece arasında değilse (yani aralık dışıysa) 
		{
			cout<<"mavi mantar ekebilirsiniz";
		}
		else  // yoksa yani eğer ısı 30-40 derece arasında ise
		{
			if (NEM=="nemli") // eger toprak nemliyse
			{
				cout<<"Pancar ekebilirsiniz";
			}
			else // eger toprak kuru ise
			{
				cout<<"yeşil mercimek ekebilirsiniz";
			}
		}
	}
	cout << endl<<endl<<"Program Burada Sona Erdi"<<endl;
CIKIS:
	cout <<endl<< "Programdan Çıkmak istiyormusunuz e yada h    : ";	
	cin >> ext; // xt string değişkenimize değer alalım
	if  ((ext=="e") && (ext=="h")) //xt için yapılan giriş e ya da h harfleri dıiında ise
	{
		cout <<"Yanlış karakter seçimi yaptınız tekrar deneyin"; // aynen tekrar giriş için 
		goto CIKIS; // CIKIS isimli labele geri dön.
	}
	else // e veya h cevabı aldıysaaak 
	{
		if (ext=="h") // h (hayır) cevabı aldıysak
		{
			goto ANA_MENU; // TAA programın başına git
		}
		else // yani e evet cebabı aldısak
		{
			cout << "PROGRAM SONA ERDİ İYİ GÜNLER ......."<<endl<<endl;
			return 0;
		}
	
	}

}